/*
 * Copyright (c) 2024 Huawei Device Co., Ltd.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

// Autogenerated file by wrong_ctx_tests.rb script -- DO NOT EDIT!

#include "libabckit/include/c/abckit.h"
#include "libabckit/include/c/metadata_core.h"
#include "libabckit/include/c/extensions/arkts/metadata_arkts.h"
#include "libabckit/include/c/extensions/js/metadata_js.h"
#include "libabckit/include/c/ir_core.h"

#include "helpers/helpers.h"
#include "helpers/helpers_wrong_ctx.h"

#include <gtest/gtest.h>

namespace libabckit::test {

% case domain
% when "ArktsInspectApi"
%    getter = "AbckitGetArkTsInspectApiImpl"
% when "ArktsModifyApi"
%    getter = "AbckitGetArkTsModifyApiImpl"
% else
%    getter = "AbckitGet" + domain
% end
%
% domain_var = 'g_' + domain[0].downcase + domain[1...-1]
static auto <%= domain_var %> = <%= getter %>(ABCKIT_VERSION_RELEASE_1_0_0);

class LibAbcKitWrongCtxTests<%=domain%><%=iteration%> : public ::testing::Test {};

% slice_start = index
% slice_end = index + slice_size - 1
% api_funcs_arr[slice_start..slice_end].each do |api_func|
// Test: test-kind=api, api=<%= domain %>::<%= api_func %>,
// abc-kind=NoABC, category=negative-file
TEST_F(LibAbcKitWrongCtxTests<%=domain%><%=iteration%>, <%= api_func %>)
{
    helpers_wrong_ctx::TestWrongCtx(<%= domain_var %>-><%= api_func %>);
}

% end
}  // namespace libabckit::test
